
from bs4 import BeautifulSoup #导入BeautifulSoup库
import requests #导入requests库，用来读取在线网页数据的
import time  #导入time库，定时作用

### ex05：提取https://knewone.com/网站的详细信息（多页面）
##  网址：https://knewone.com/things（爬取5个页面）
##  时间：2017年10月13日
##  难点:如何获得网页的动态数据

url = "https://knewone.com/things?page=" #这是列表页网址的形式

###第一个函数用于提取列表页产品的信息
def get_url_info(url):
    webdata = requests.get(url)  # 通过get方法获取网页数据
    soup = BeautifulSoup(webdata.text, 'lxml')  # 通过BeautifulSoup对网页数据解析
    titles = soup.select("section > h4.title > a")  # 获取所有产品名称
    links = soup.select("section > h4.title > a")  # 获取所有产品名称
    images = soup.select("a.cover-inner > img")  # 获取图片
    for title,link,image in zip(titles,links,images):
        data = {
            "名称":title.get("title"),
            "链接":"https://knewone.com/"+link.get("href"),
            "图片":image.get("src")
        }
        print(data)

###第二个函数用于生成列表页
###列表页的形式要通过查看XHR得到
def get_more_pages(start, end):
    for number in range(start,end):
        get_url_info(url+str(number))
        time.sleep(3)   #暂停3秒

get_more_pages(1,6)


